<?php

namespace common\models\dynamic;

use Yii;

/**
 * This is the model class for table "{{%topic}}".
 *
 * @property int $id
 * @property string $content 话题内容 ##  双井号匹配话题，话题保存时去除双井号
 * @property int $is_official 是否是官方话题 0否 1是
 * @property int $user_id 话题创建人 
 * @property int $join_nums 话题参与数
 * @property int $views 话题阅读数
 * @property string $pic_path 话题图片路径
 * @property int $weight 排序权重 由小到大，根据浏览量，点赞量动态变更..
 * @property int $created_at 创建时间
 * @property int $updated_at 更新时间
 * @property int $deleted_at 删除时间
 */
class Topic extends \yii\db\ActiveRecord {

    use \common\traits\TimestampBehavior;
    use \common\traits\SoftDeleting;
    use \common\traits\QueryInstanceActiveRecord;

    /**
     * @const OFFICIAL_Y 官方创建
     * @const OFFICIAL_N 用户创建
     */
    const OFFICIAL_Y = 1;
    const OFFICIAL_N = 0;

    /**
     * @inheritdoc
     */
    public static function tableName() {
        return '{{%topic}}';
    }

    /**
     * @inheritdoc
     */
    public function rules() {
        return [
            [['user_id', 'join_nums', 'views','weight', 'created_at', 'updated_at', 'deleted_at'], 'integer'],
            [['content', 'pic_path'], 'string', 'max' => 120],
            [['is_official'], 'integer', 'max' => 2],
        ];
    }

    /**
     * @inheritdoc
     */
    public function attributeLabels() {
        return [
            'id' => 'ID',
            'content' => '话题内容 ##  双井号匹配话题，话题保存时去除双井号',
            'is_official' => '是否是官方话题 0否 1是',
            'user_id' => '话题创建人',
            'join_nums' => '话题参与数',
            'views' => '话题阅读数',
            'pic_path' => '话题图片路径',
            'weight' => '排序权重 由小到大，根据浏览量，点赞量动态变更..',
            'created_at' => '创建时间',
            'updated_at' => '更新时间',
            'deleted_at' => '删除时间',
        ];
    }

    public function getUser() {
        return $this->hasOne(Yii::$app->user->identityClass, ['id' => 'user_id']);
    }

}
